package com.woniuxy.juc.cas;

import java.lang.reflect.Field;

/**
 * <P> @Author: ideaAdmin
 * <P> TODO: Class
 * <P> TODO:
 * <P> Date: 2022/4/9:17:31
 * <P> Description:
 */
@SuppressWarnings("all")
public class Test {
    public static void main(String[] args) throws NoSuchFieldException, IllegalAccessException {
//        String s1 = new String("1") + new String("2");
//
//        String s2 = new String("12");
//        System.out.println(s1==s1.intern());//false
//
        String s3 = "12";
        String s4 =  new String("12");
        System.out.println(s3==s4.intern());


//        // String s = new String("Hello World");
//        String s = "Hello World";
//        System.err.println(s.hashCode());
//        System.out.println("s初始 = " + s);
//
//
//        // 获取String类中的value属性
//        Field valueField = String.class.getDeclaredField("value");
//
//        //改变value属性的访问权限
//        valueField.setAccessible(true);
//
//        //获取s对象上的value属性的值
//        char[] value = (char[]) valueField.get(s);
//
//        //改变value所引用的数组中的第6个字符
//        value[5] = '_';
//        System.out.println("s反射修改后 = " + s);            //  Hello_Worl=stem.out.println(s.equals("Hello World"));      //  true，   为什么？
//        System.out.println(s.equals("Hello World"));           //  true，  为什么？
//        System.out.println(s.equals("Hello_World"));      //  true，   为什么？
//        System.out.println(s == "Hello World");           //  true， 为什么？
//        System.out.println(s == "Hello_World");           //  false， 为什么？
//        System.out.println("s反射修改后 = " + s.toString());  //  Hello_World
////

    }
}
